/*
 * ColumnCellEditorPanelListaComponentes.java
 * Copyright 2010 Universidad Francisco de Paula Santander (UFPS).
 * Todos los Derechos Reservados.
 * Creado el 18/04/2010, 11:31:30 PM
 */


package com.ufps.cuatro.util.editor;

import java.awt.Component;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.AbstractCellEditor;
import javax.swing.JCheckBox;
import javax.swing.JLabel;
import javax.swing.JTable;
import javax.swing.table.TableCellEditor;

import com.ufps.cuatro.modelo.representacion.componente.ComponenteGeneradoSimple;

/**
 * <i><b>ColumnCellEditorPanelListaComponentes:</b></i> @DescripcionClase
 * @author Carlos A. Torres C. - Dolly E. Guerrero. <https://code.google.com/p/tesis4dor/>
 * @version 1.0 18/04/2010
 * @see AbstractCellEditor
 * @see TableCellEditor
 * @see ActionListener
 */
public class ColumnCellEditorPanelListaComponentes extends AbstractCellEditor implements TableCellEditor, ActionListener{
    
    private static final long serialVersionUID = 6401092650711011090L;;

    private Object obj;

    /**
     * @DescripcionMetodo
     */
    public ColumnCellEditorPanelListaComponentes() {
    }

    public Component getTableCellEditorComponent(JTable table, Object value, boolean isSelected, int row, int column) {
        this.obj = value;
        if(column == 2){
            ComponenteGeneradoSimple objComponenteGenerado = (ComponenteGeneradoSimple) obj;            
            boolean estado = objComponenteGenerado.isIncluido();
            JCheckBox objChk = new JCheckBox("", estado);            
            objChk.setToolTipText("Indica si el Componente esta Incluido en la Interfaz");
            objChk.addActionListener(this);
            return objChk;
        }
        else{
            String strValor = (String) value;
            JLabel objLbl = new JLabel(strValor);            
            return objLbl;
        }
    }

    public Object getCellEditorValue() {
        return this.obj;
    }

    public void actionPerformed(ActionEvent e) {
        try{
            ComponenteGeneradoSimple objComponenteGenerado = (ComponenteGeneradoSimple) obj;            
            JCheckBox objChk = (JCheckBox) e.getSource();        
        //objComponenteGenerado.getObjPlantillaComponenteAutomatica().setIncluido(objChk.isSelected());
        }catch(java.lang.Exception ex){}
        
    }


}
